Method and system for controlling a smart lock

ABSTRACT

One embodiment of the present invention provides a smart lock-and-key system. The smart lock-and-key system can include a smart lock corresponding to a lock identifier and a smart key capable of locking and unlocking the smart lock. The smart key can include a first communication interface for communicating with the smart lock and a second communication interface for communicating with a mobile computing device. The smart key can be configured to obtain the lock identifier and receive, from the mobile computing device, an operation command based on the obtained lock identifier.

RELATED APPLICATION

This application is a continuation of U.S. application Ser. No.16/742,432, Attorney Docket Number YTC19-1002US, entitled “METHOD ANDSYSTEM FOR CONTROLLING A SMART LOCK,” by inventors Qing Chang, HongweiQiao, and Jing Zhang, filed 14 Jan. 2020, which claims the benefit ofU.S. Provisional Application No. 62/798,972, Attorney Docket NumberYTC19-1002PSP, entitled “Method and System for Controlling a SmartLock,” by inventors Qing Chang, Hongwei Qiao, and Jing Zhang, filed 30Jan. 2019.

BACKGROUND Field

The present disclosure relates to smart lock-and-key systems. Morespecifically, the present disclosure relates to a method and system forcontrolling a smart lock.

Related Art

Smart lock-and-key systems have been gaining popularity in recent years,especially since the development of smart home technologies. A smartlock-and-key system can often include a smart key and a smart lock.During operation, electrical signals can be exchanged between the smartlock and the smart key to achieve the locking and unlocking operation.

Operations of current smart lock-and-key systems are typicallyfacilitated by a control system running on a computer (e.g., a server ora terminal device). Before deployment, a smart key needs to go throughthe processes that include self-learning, simulation, andtask-acceptance, while the smart key is in communication with thecontrol system, via a wired or wireless link. More specifically, beforethe operator of the smart key can perform a certain key operation (e.g.,unlocking or locking a particular lock), the operator needs to acceptand save the task on the smart key; and after the completion of theoperation, the smart key needs to upload the operation result (e.g., thestatus of the particular lock) to the control system. There are manydrawbacks to the conventional lock-and-key system. First, the processesfor accepting or downloading the task and uploading the operation resultcan be tedious and time-consuming, thus resulting in a low-efficiencysystem. Second, a system administrator cannot monitor, in real time,status of the operations; instead, the system administrator can onlyrely on the operation result uploaded by the smart key after thecompletion of the operation. Moreover, once the smart key downloads thetask, the status of the task is no longer updated. Sometime, the statusof equipment within a facility (e.g., a substation of a power plant) maychange, and a previously downloaded task may no longer be needed orsafe. However, the task stored in the smart key cannot synchronize withthe equipment status maintained by the control system, which can resultin misoperation.

SUMMARY

One embodiment of the present invention provides a smart lock-and-keysystem. The smart lock-and-key system can include a smart lockcorresponding to a lock identifier and a smart key capable of lockingand unlocking the smart lock. The smart key can include a firstcommunication interface for communicating with the smart lock and asecond communication interface for communicating with a mobile computingdevice. The smart key can be configured to obtain the lock identifierand receive, from the mobile computing device, an operation commandbased on the obtained lock identifier.

In a variation on this embodiment, the smart key receives the operationcommand from the mobile computing device via the second communicationinterface, and the second communication interface comprises one or moreof: a Bluetooth™ interface, a ZigBee™ interface, and a Z-Wave™interface.

In a variation on this embodiment, the first communication interface caninclude a low-frequency radio frequency (RF) communication interface.

In a variation on this embodiment, prior to locking or unlocking thesmart lock, the smart key can be configured to read the lock identifierand upload the lock identifier to the remote server via the mobilecomputing device, thus facilitating the remote server to validate thesmart lock based on a set of lock identifiers and/or a set of operationcommands stored on the remote server. The smart key can further receivea validation result from the remote server via the mobile computingdevice and, in response to the smart lock being validated by the remoteserver, receive the operation command and perform a locking or unlockingoperation specified by the operation command.

In a variation on this embodiment, prior to locking or unlocking thesmart lock, the smart key can be configured to read the lock identifiervia the first communication interface and upload the lock identifier viathe second communication interface to the mobile computing device, thusfacilitating the mobile computing device to validate the smart lockbased on a set of lock identifiers and/or a set of operation commandsstored on the mobile computing device. In response to the smart lockbeing validated by the mobile computing device, the smart key canreceive the operation command and perform a locking or unlockingoperation specified by the operation command.

In a variation on this embodiment, the smart key can further include anencryption module for encrypting communications between the smart keyand the smart lock and/or communications between the smart key and themobile computing device.

In a variation on this embodiment, the smart key can further include aposition-detection module configured to detect a relative positionbetween the smart key and the smart lock.

In a variation on this embodiment, subsequent to locking or unlockingthe smart lock, the smart key is configured to receive, from the smartlock, a current status of the smart lock, and upload the current statusof the smart lock to the remote server, via the mobile computing device,thereby facilitating the remote server in maintaining the current statusof the smart lock.

In a variation on this embodiment, the mobile computing device caninclude a smartphone.

In a variation on this embodiment, the mobile computing device canconfigured to display an error message in response to the remote serveror the mobile computing device invalidating the smart lock based on thelock identifier obtained by the smart key.

One embodiment of the present invention provides a smart key for lockingand unlocking a smart lock. The smart key can include a firstcommunication interface for communicating with the smart lock and asecond communication interface for communicating with a mobile computingdevice. The smart lock corresponds to a lock identifier. The smart keycan be configured to obtain the lock identifier and receive, from themobile computing device, an operation command based on the obtained lockidentifier.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 illustrates an exemplary smart lock-and-key system, according toone embodiment.

FIG. 2 illustrates a block diagram of an exemplary server, according toone embodiment.

FIG. 3 illustrates a block diagram of an exemplary mobile computingdevice, according to one embodiment.

FIG. 4 illustrates a block diagram of an exemplary smart key, accordingto one embodiment.

FIG. 5 presents a flowchart illustrating an exemplary operation of thesmart lock-and-key system, according to one embodiment.

FIG. 6 presents a flowchart illustrating an exemplary operation of thesmart lock-and-key system, according to one embodiment.

FIG. 7 illustrates an exemplary computer system that facilitates thesmart lock-and-key system, according to one embodiment.

In the figures, like reference numerals refer to the same figureelements.

DETAILED DESCRIPTION

The following description is presented to enable any person skilled inthe art to make and use the invention, and is provided in the context ofa particular application and its requirements. Various modifications tothe disclosed embodiments will be readily apparent to those skilled inthe art, and the general principles defined herein may be applied toother embodiments and applications without departing from the spirit andscope of the present invention. Thus, the present invention is notlimited to the embodiments shown, but is to be accorded the widest scopeconsistent with the principles and features disclosed herein.

Overview

Embodiments of the present invention provide a novel smart lock-and-keysystem. The smart lock-and-key system can include a smart key capable ofautomatic locking and unlocking of the smart lock. Moreover, the smartkey can be equipped with a wireless communication module (e.g., aBluetooth™ module) capable of communicating with a mobile computingdevice. When operating in the field, the smart key can read anidentifier of a smart lock (e.g., a lock ID) and upload the lock ID to aremote server, via the mobile computing device, to allow the remoteserver to determine an operation sequence based on the lock ID. Thesmart server can also issue operation commands based on the lock ID. Themobile computing device can relay the operation commands from the remoteserver to the smart key and relay operation results from the smart keyto the remote server. Because a mobile computing device typically isequipped with a display, it is no longer necessary to include a displayin the smart key, thus reducing the size of the smart key.

Smart Lock-And-Key System

To prevent possible human switching errors, transmission substations orswitching/dispatching centers can implement a smart-interlock system(SIS), which performs a “five-step” method to ensure switching safety.The five steps for performing safe switching include: a simulation step,a switching-order transmission step, a device ID verification step, anoperation-permission revalidation step, and a switching-completion step.

Some SIS systems rely on the smart key for verifying the device ID andthe switching order, whereas the lock itself can be a simple mechanicallock. The locking and unlocking of the physical lock may be performedmanually by a human user. For example, a human operator may need tophysically insert the key head into the lock core and rotate the keyhead to unlock the lock. However, the mechanical locking and unlockingmechanism can be unreliable. In some embodiments, both the key and thelock can be “smart,” meaning that the locking and unlocking can now beperformed electrically, e.g., via exchanging electrical signals. The“smart” key and lock can also be referred to as an electrical key andlock.

A typical smart lock-and-key system can include an electrical key and alock operable by the electrical key. The lock can be part of a piece ofequipment (e.g., a lock on a control panel) or can be removable (e.g., apadlock). Alternatively, the equipment may be placed inside a cabinetand the lock can be a built-in lock of the cabinet. The lock can bepassive, meaning it is not connected to a power source and does not havea built-in battery. On the other hand, the electrical key can include abuilt-in battery. When the electrical key is inserted into theelectrical lock, electrical energy can be transferred from the key tothe lock to facilitate the automatic locking and unlocking operations.In addition to the key and lock modules, the smart lock-and-key systemcan further include a mobile computing device (e.g., a smartphone or atablet computer) and a remote server (e.g., a standalone server computeror a server located in the cloud). The locking and unlocking operationsof the key and lock can be controlled by the remote server via themobile computing device.

FIG. 1 illustrates an exemplary smart lock-and-key system, according toone embodiment. Smart lock-and-key system 100 can include a smart lock102, a smart key 104, a mobile computing device 106, and a remote server108. Smart lock-and-key system 100 can also be part of anerror-prevention system that can prevent human operation errors (e.g.,switching errors in a substation of a power plant) by installing smartlocks on equipment (e.g., switches or control panels). When a humanoperator performs operations, the smart locks need to be locked/unlockedfollowing a particular operation sequence determined based on systemrequirements (e.g., safety rules). By ensuring the correct sequence oflocking/unlocking the smart locks, the error-prevention system canprevent human operation errors.

Smart lock 102 can have various formats, depending on the application.For example, a substation of a power plant may have different types ofsmart locks, such as smart padlocks, smart deadbolt locks for lockingfireproof doors, built-in locks on equipment control panels, smart codelocks, locks on switch knives, etc. Smart key 104 can operate on thevarious types of smart locks. More specifically, smart key 104 and smartlock 102 can communicate with each other via a radio frequency (RF)communication interface. Smart key 104 can transmit locking andunlocking commands to smart lock 102 via the RF communication interface.Moreover, smart lock 102 and smart key 104 can each include anenergy-transfer module, thus facilitating electrical energy beingtransferred from smart key 104 to smart lock 102. More detaileddescriptions of the interactions between smart lock 102 and smart key104 can be found in application Ser. No. 16/734,137 (Attorney Docket No.YTC19-1001US), entitled “METHOD AND SYSTEM FOR OPERATING KEY AND LOCKCORE WITH WIRELESS CHARGING,” by inventors Qing Chang, Hongwei Qiao, andJing Zhang, filed 3 Jan. 2020, the disclosure of which is incorporatedby reference in its entirety herein.

Mobile computing device 106 can be any type of computing device that hasa short-range communication interface as well as a long-rangecommunication interface. In some embodiments, mobile computing device106 can include a smartphone, a tablet computer, a laptop computer, awearable device (e.g., smart glasses or a smart watch), etc. Theshort-range communication interface of mobile computing device 106 canbe used to communicate with smart key 104, and the long-rangecommunication interface can be used to communicate with remote server108. In some embodiments, the short-range communication interface caninclude a Bluetooth™ interface, a ZigBee™ interface, a Z-Wave™interface, or an infrared interface, etc. On the other hand, thelong-range communication interface can include a cellular interface or aWi-Fi™ interface. Mobile computing device 106 can be configured to runthe client-side program of the smart-interlock-control application tofacilitate the operations of electrical key 104.

Remote server 108 can be a standalone server or a server residing in thecloud (i.e., it is implemented using cloud-computing technologies). Insome embodiments, remote server 108 can run the server-side program ofthe smart-interlock-control application. More specifically, beforegenerating a locking or unlocking task, remote server 108 can run asimulation to determine whether the locking or unlocking operation is avalid operation. For example, if the unlocking operation is used forunlocking a lock on a switch knife in a substation to facilitate aswitching operation, remote server 108 can run a switching-ordersimulation of the substation to determine whether the switchingoperation is safe. If remote server 108 determines that the locking orunlocking operation is a valid operation, remote server 108 can send thelocking or unlocking task to mobile computing device 106, which thenrelays such a task to smart key 104. Accordingly, smart key 104 sends acorresponding locking or unlocking command to smart lock 102 to completethe locking or unlocking operation.

FIG. 2 illustrates a block diagram of an exemplary server, according toone embodiment. Server 200 can include a communication module 202, anoptional simulation module 204, a task-validation module 206, anencryption module 208, and an operation database 210.

Communication module 202 can be responsible for the communicationbetween server 200 and a mobile computing device. For example,communication module 202 can receive a task-verification request to themobile computing device. Moreover, communication module 202 can send averified locking or unlocking task to the mobile computing device.Communication module 202 can include a standard computer networkingmodule.

Simulation module 204 can be responsible for running simulations whenneeded. For example, if the smart locks and keys are located in a powerstation, simulation module 204 can run a switching-order simulation ofthe power station based on the current equipment status of the powerstation. Note that server 200 maintains the most up-to-date statusinformation regarding the equipment in the power station.

Task-validation module 206 can be responsible for verifying whether alocking or unlocking operation is a valid or permitted operation. Thevalidation can be based on simulation results of simulation module 204.Alternatively, the validation can be based on a set of predeterminedrules. For example, a system administrator can establish a set of rulesthat governs the locking and unlocking operations, such as a particularlocking/unlocking sequence. In a different example, a particular rulecan specify one or more conditions that need to be met before a lockingor unlocking operation can be performed.

Encryption module 208 can be responsible for encrypting and decryptingthe communications between server 200 and the mobile computing device.Such encryption/decryption operations can be essential in ensuringcommunication security. For example, by encrypting a message thatincludes an unlocking task, one can prevent a malicious user fromintercepting or modifying such a message, thus preventing the malicioususer from manipulating operations of the smart key. Encryption module208 can implement symmetric or asymmetric encryption techniques. In someembodiments, encryption module 208 can use an Advanced EncryptionStandard (AES) algorithm (e.g., AES-128) to encrypt/decrypt messagesexchanged between server 200 and the mobile computing device. Note thatthe encryption provided by encryption module 208 is in addition to thestandard encryptions provided by the network service provider.

Operation database 210 can store a number of lock IDs corresponding tosmart locks managed by server 200. An entry in operation database 210can include a lock ID and one or more operation tasks (lock, unlock, ora combination thereof) to be performed on the corresponding smart lock.In order to verify an operation on a smart lock, task-validation module206 can query operation database 210 using the corresponding lock ID. Ifthe lock ID is not found in operation database 210, or if the lock ID isfound but there is no operation task corresponding to the lock ID inoperation database 210, task-validation module invalidates the operationand returns an error message to the mobile computing device. The lockIDs can be unique identifiers issued by lock manufacturers or can beidentifiers configured by operators of the locks. In certain situations,a number of locks may share the same lock ID if they are used on similarequipment.

FIG. 3 illustrates a block diagram of an exemplary mobile computingdevice, according to one embodiment. Mobile computing device 300 caninclude a server-communication module 302, a key-communication module304, an encryption module 306, and an operation queue 308.

Server-communication module 302 can be responsible for communicatingwith a remote server. More specifically, server-communication module 302can include a Wi-Fi module and/or a cellular communication module thatcan facilitate the communication between mobile computing device 300 andthe remote server via a computer network (e.g., the Internet).Server-communication module 302 can receive a locking or unlocking taskfrom the remote server and can send results of the locking/unlockingoperations to the remote server. For example, subsequent to the smartkey performing a locking or unlocking operation, mobile computing device300 can send, via server-communication module 302, the current status ofthe lock (including the equipment associated with the lock) to theremote server, thus allowing the server to update the equipment status.

Key-communication module 304 can be responsible for communicating withthe smart key. In some embodiments, key-communication module 304 caninclude a Bluetooth module. Alternatively, key-communication module 304can include a ZigBee or Z-Wave module. During operation,key-communication module 304 can send locking and unlocking tasksreceived from the server to the smart key, and can receive the currentstatus of the lock from the smart key.

Encryption module 306 can be responsible for performingencryption/decryption operations for both server-communication module302 and key-communication module 304. Encryption module 306 canimplement symmetric or asymmetric encryption techniques. In someembodiments, encryption module 306 can use the same symmetric encryptiontechnique (e.g., the AES-128 algorithm) to encrypt/decrypt thecommunications between mobile computing device 300 and the server andthe communications between mobile computing device 300 and the smartkey.

Operation queue 308 can temporarily store a sequence of lock operationcommands downloaded from a server. Operation queue 308 is used when thesystem operates in a semi-online fashion, when mobile computing device300 does not have connection to the server during the operation of thesmart key. In such scenarios, mobile computing device 300 downloads aset of operation commands, including a number of lock IDs andlocking/unlocking tasks associated with those lock IDs.

FIG. 4 illustrates a block diagram of an exemplary smart key, accordingto one embodiment. Smart key 400 can include amobile-device-communication module 402, a lock-communication module 404,an encryption module 406, a position-detection module 408, anenergy-transfer module 410, and a battery module 412.

Mobile-device-communication module 402 allows smart key 400 to be pairedor communicate with a mobile computing device, which can then relay thecommunication to and from a remote server. In some embodiments,mobile-device-communication module 402 can include a Bluetooth module.Alternatively, mobile-communication module 402 can include a ZigBee orZ-Wave module. During operation, mobile-device-communication module 402can receive locking and unlocking tasks from a remote server, via themobile computing device paired with smart key 400. Before performing alocking or unlocking operation, mobile-device-communication module 402can send the identification of the lock (i.e., the lock ID) to theremote server to allow the remote server to validate the pending lockingor unlocking task. Subsequent to smart key 400 performing the locking orunlocking operation, mobile-device-communication module 402 cancommunicate the operation result (e.g., success or failure) and thecurrent status of the lock to the remote server.

Lock-communication module 404 can be responsible for communicating withthe smart lock. More specifically, smart key 400 can read the identifierof the smart lock (e.g., a lock ID) via lock-communication module 404.Moreover, smart key 400 can send locking or unlocking commands to thesmart lock via lock-communication module 404. In some embodiments,lock-communication module 404 can include a low-frequency (LF) RFcommunication module operating at an LF RF frequency (e.g., between 120and 150 kHz). In addition to sending the locking/unlocking commands,lock-communication module 404 can also receive, from the smart lock, thecurrent status of the lock.

Encryption module 406 can be responsible for encrypting and decryptingcommunications to and from both mobile-device-communication module 402and lock-communication module 404. Note that encrypting thecommunication between smart key 400 and the smart lock is essential toprevent malicious users from sending fake locking or unlocking commands.Encryption module 406 can implement symmetric or asymmetric encryptiontechniques. In some embodiments, encryption module 406 can use the samesymmetric encryption technique (e.g., the AES-128 algorithm) toencrypt/decrypt the communications between mobile-device-communicationmodule 402 and the mobile computing device and communications betweenthe lock-communication module 404 and the smart lock.

Position-detection module 408 can be responsible for automaticallydetecting the relative position between smart key 400 and the smartlock. In some embodiments, detecting the relative position involvestransmitting, by position-detection module 408, a characteristic pulsesequence, and detecting changes in voltage or current across a coilwrapped around a magnetic core in smart key 400. The characteristicpulse sequence can be generated by applying a rectangular-wave gatingsignal on a continuous square-wave pulse train. Energy-transfer module410 can be responsible for transferring energy from smart key 400 to thesmart lock, in response to position-detection module 408 detecting thatthe key head of smart key 400 is inserted into the lock core of thesmart lock or smart key 400 being sufficiently close to the smart lock,thus facilitating the locking or unlocking of the smart lock. In someembodiments, energy-transfer module 410 can include an inductivecharging module and its corresponding control circuit. Battery module412 can be responsible for providing electrical energy to the variousmodules of smart key 400 to facilitate the operations of the variousmodules.

FIG. 5 presents a flowchart illustrating an exemplary operation of thesmart lock-and-key system, according to one embodiment. Duringoperation, a key operator inserts the key head of the smart key into thelock core of the smart lock (operation 502). In an alternativeembodiment, the key operator can just place the smart key sufficientlyclose to the smart lock. Note that standard authentication mechanisms(e.g., password- or biometric-based authentication mechanisms) can beused to authenticate the key operator. The smart key reads the uniqueidentifier of the smart lock (operation 504). More specifically, thesmart key communicates with the smart lock using LF RF signals, and thesmart lock reports its lock ID to the smart key. The unique ID of eachlock can be issued by its manufacturer or configured before the lock isdeployed to the field. Depending on the type of smart lock or lock ID,different mechanisms can be used to obtain the lock ID. Certain smartlocks can be equipped with a RFID-based identifier, and the smart keycan include an RFID reader for obtaining the lock ID. Alternatively, thesmart key can power up the smart lock's RFID module when the smart keyis sufficiently close to the smart lock to allow the RFID module of thesmart lock to transmit the lock ID to the smart key. The smart key canforward the unique lock ID to the mobile computing device (operation506), which then uploads the unique lock ID to the remote server(operation 508). In some embodiments, the smart key can forward theunique lock ID to the mobile computing device via a Bluetooth, ZigBee orZ-Wave communication interface. Depending on the available connectivityin the field, the mobile computing device may communicate with theremote server via a Wi-Fi interface or a cellular interface.

Upon receiving the unique lock ID, the remote server determines thevalidity of the lock ID (operation 510). More specifically, the remoteserver can determine whether the lock is the desired lock to be lockedor unlocked based on the unique lock ID. If the locking or unlockingoperation is part of a switching operation (e.g., unlock a lock to movea switch knife), the remote server can run a switching-order simulationfor the substation to determine whether the switching operation is safe.Alternatively, the remote server can determine, based on a set of rulesstored in the server and the lock ID, whether the pending locking orunlocking operation is a validated or permitted operation. In someembodiments, the remote server can determine whether an entrycorresponding to the lock ID is stored in an operation database on theserver and whether the entry specifies one or more pending tasks. If thelock ID is not found in the operation database or if there is no pendingtask associated with the lock ID, the remote server invalidates the lockID.

If the remote server invalidates or fails to validate the lock ID, theremote server generates and transmits an error message to the mobilecomputing device (operation 512). The mobile computing device can thendisplay the error message to the key operator (operation 514),indicating to the key operator that the lock is invalidated.Accordingly, the key operator can remove the smart key and the operationends.

On the other hand, if the remote server validates the lock ID, theremote server generates and transmits operation commands to the mobilecomputing device (operation 516). The operation commands can specify alocking task, an unlocking task, or a sequence of locking and/orunlocking tasks. The mobile computing device forwards the operationcommands to the smart key (operation 518). Based on the receivedoperation commands, the smart key can transmit, via a LF RFcommunication interface, a locking or unlocking command to the smartlock (operation 520). The smart lock completes the locking or unlockingoperation accordingly (operation 522) and returns the operation result(e.g., success or failure) and its current status (e.g., locked orunlocked) to the smart key (operation 524). The smart lock can includevarious locking mechanism (e.g., latch-based, sliding-rod-based, etc.)depending on the type of lock. In some embodiments, the smart lock caninclude a control module capable of controlling a motor that drives thelocking mechanism to accomplish the locking/unlocking of the lockaccording to the command received from the smart key. The smart keytransmits the operation result and the lock status to the mobilecomputing device (operation 526), and the mobile computing devicesubsequently uploads the operation result and the lock status to theremote server (operation 528), thus allowing the remote server to updateits stored lock status information.

In the example shown in FIG. 5, the mobile computing device hasconnectivity to the remote server in the field. Consequently, operationsof the smart key can be considered “online” operations, where the smartkey receives operation instructions right before performing theoperations, and the operation instructions can be generated by theremote server based on the most up-to-date status of the system (e.g.,status of all locks or equipment). The online operations of the smartkey can prevent possible misoperations. However, in certain scenarios,the smart key may not be able to operate online at all times. Forexample, when the field is remote and the mobile computing device has noconnectivity (either Wi-Fi or cellular) to the network, the smart keycan no longer operate online. Alternatively, the smart key can operatein a semi-online mode, where the mobile computing device downloads,before being brought to the remote field, a number of lock IDs and anumber of operation commands corresponding to the lock IDs from theserver. The mobile computing device can temporarily store the lock IDsand the operation commands. When operating in the field, the mobilecomputing device can verify whether a lock ID received from the smartkey corresponds to a stored lock ID and, if so, the mobile computingdevice can transmit operation commands or tasks corresponding to thelock ID to the smart key. Similarly, subsequent to receiving theoperation result and the lock status from the smart key, the mobilecomputing device can temporarily store the result and lock status,uploading the result and lock status when the mobile computing deviceonce again has connectivity.

FIG. 6 presents a flowchart illustrating an exemplary operation of thesmart lock-and-key system, according to one embodiment. Duringoperation, the mobile computing device downloads a set of operationcommands corresponding to a number of smart locks from the server(operation 602). The operation commands can include a single locking orunlocking operation or a sequence of locking/unlocking operations. Morespecifically, a particular operation command can specify a lock ID and alocking or unlocking operation. In some embodiments, the downloadableoperation commands can be generated by the server based on an operationticket or maintenance list provided by the operator. The server may runits error-prevention simulation to ensure that the requested operationsare permitted and/or safe. This is the online portion of the smart keyoperation, because, at this moment, the smart key can access the servervia the mobile computing device.

The key operator can then bring the smart key and the mobile computingdevice to the field in order to operate the smart key on a lock(operation 604). The field can be remote and the mobile computing devicedoes not have connectivity to the server. In the field, the key operatorinserts the smart key into the lock core (operation 606). Alternatively,the key operator may bring the smart key substantially close to thelock. The smart key reads the lock ID (operation 608), and sends thelock ID to the mobile computing device (operation 610). The mobilecomputing device determines the validity of the lock ID (operation 612).Operation 612 can be similar to operation 510. More specifically, themobile computing device can determine whether the received lock IDmatches one of the lock IDs the mobile computing device previouslydownloaded from the server, and if so, the mobile computing device candetermine if it has downloaded one or more operation commandscorresponding the that particular lock ID. The mobile computing devicevalidates the lock ID if the lock ID is associated with one or moreoperations commands that are previously downloaded by the mobilecomputing device from the server. Otherwise, the mobile computing deviceinvalidates the lock ID.

If the mobile computing device invalidates the lock ID, the mobilecomputing device displays an error message to the key operator(operation 614). If the mobile computing device validates the lock ID,it sends the corresponding locking or unlocking command to the lock(operation 616). Note that the communication between the smart key andthe smart lock uses low-frequency RF signals.

The smart lock performs the corresponding locking or unlocking operation(operation 618) and returns the key-operation result (e.g., success orfailure) and its current status (e.g., locked or unlocked) to the smartkey (operation 620). This is the offline portion of the smart keyoperation, because, at this moment, the smart key does not haveconnectivity to the server.

The smart key can subsequently send the operation result and the lockstatus to the mobile computing device (operation 622). This can be donein the field or after the operator returns to a control facility fromthe field. The mobile computing device can upload the operation resultand the lock status to the server (operation 624). In certain scenarios,the key operator may choose to operate the smart key in this semi-onlinemode, even though the mobile computing device can be connected to theserver in the field. Without requesting the server to validate eachoperation, the smart key can perform the locking and unlockingoperations more efficiently.

FIG. 7 illustrates an exemplary computer system that facilitates thesmart lock-and-key system, according to one embodiment. In this example,a computer system 700 includes a processor 702, a memory device 704, anda storage device 706. Furthermore, computer system 700 can be coupled toa network 708, a display device 710, a keyboard 712, and a pointingdevice 714. Storage device 706 can store code for an operating system716, a smart lock-and-key system 718, and data 720.

Smart lock-and-key system 718 can include instructions, which whenexecuted by processor 702 can cause computer system 700 to performmethods and/or processes described in this disclosure. Specifically,smart lock-and-key system 718 can include instructions for implementinga communication module 722 for facilitating communications among variousmodules and components within the smart lock-and-key system, anencryption module 724 for encrypting/decrypting the communications, anoptional simulation module 726 for performing switching-ordersimulations in a power plant, an operation-validation module 728 forvalidating a to-be-performed operation, a key-position-detection module730 for detecting the relative position between the smart key and thesmart lock, and an operation database 732.

In general, embodiments of the present invention can provide a novelsmart lock-and-key system that includes a mobile computing device and asmart key capable of communicating with the mobile computing device viaa short-range communication interface (e.g., Bluetooth, ZigBee, Z-Wave,etc.). Allowing the smart key to be paired with a mobile computingdevice makes it possible for one to design and manufacture a smart keythat does not have a display or a long-range communication module (e.g.,a Wi-Fi or cellular data communication module). This can result in acompact, low-power, and low-cost smart key. More specifically, whenoperating in the online mode, the smart key can have each operationvalidated by the remote server, which maintains the most up-to-datestatus of the equipment, thus preventing possible misoperation. Theremote server has sufficient computing and storage power to manage thedata and operational logic associated with the smart lock-and-keysystem, thus making it possible for the smart key to have less complexhardware.

The foregoing descriptions of embodiments of the present invention havebeen presented only for purposes of illustration and description. Theyare not intended to be exhaustive or to limit this disclosure.Accordingly, many modifications and variations will be apparent topractitioners skilled in the art. The scope of the present invention isdefined by the appended claims.

What is claimed is:
 1. A smart key for locking and unlocking a smartlock, the smart key comprising: a lock-communication module configuredto store a lock identifier corresponding to a smart lock; and amobile-device-communication module configured to: forward the lockidentifier to a mobile computing device to allow the mobile computingdevice to validate the smart lock based on the lock identifier; andreceive, from the mobile computing device, an operation command based onthe lock identifier, in response to the mobile computing devicevalidating the smart lock, thereby facilitating the smart key to lock orunlock the smart lock based on the operation command.
 2. The smart keyof claim 1, wherein the mobile-device communication module comprises oneor more of: a Bluetooth™ interface; a ZigBee™ interface; and a Z-Wave™interface.
 3. The smart key of claim 1, wherein the lock-communicationmodule comprises a low-frequency radio frequency (RF) communicationinterface.
 4. The smart key of claim 1, wherein the mobile-devicecommunication module is further configured to: forward the lockidentifier to a remote server via the mobile computing device to allowthe remote server to validate the smart lock based on the lockidentifier.
 5. The smart key of claim 1, wherein the mobile computingdevice maintains an operation queue comprising a set of lock identifiersand a corresponding set of operation commands, and wherein the mobilecomputing device validates the smart lock by looking up the lockidentifier in the operation queue.
 6. The smart key of claim 1, furthercomprising an encryption module for encrypting communications betweenthe smart key and the smart lock and/or communications between the smartkey and the mobile computing device.
 7. The smart key of claim 1,further comprising a position-detection module configured to detect arelative position between the smart key and the smart lock.
 8. The smartkey of claim 1, wherein the lock-communication module is furtherconfigured to receive, from the smart lock, a current status of thesmart lock subsequent to the smart key locking or unlocking the smartlock, and wherein the mobile-device-communication module is furtherconfigured to upload the current status of the smart lock to a remoteserver, via the mobile computing device, thereby facilitating the remoteserver in maintaining the current status of the smart lock.
 9. The smartkey of claim 1, wherein the mobile computing device comprises asmartphone.
 10. The smart key of claim 1, wherein the mobile computingdevice is configured to display an error message in response toinvalidating the smart lock.
 11. A computer-implemented method for usinga smart key to lock or unlock a smart lock, the method comprising:receiving, by the smart key via a first communication interface, a lockidentifier from the smart lock; and forwarding, by the smart key via asecond communication interface, the lock identifier to a mobilecomputing device to allow the mobile computing device to validate thesmart lock based on the lock identifier; receiving, from the mobilecomputing device, an operation command based on the lock identifier inresponse to the mobile computing device validating the smart lock; andlocking or unlocking the smart lock based on the received operationcommand.
 12. The method of claim 11, wherein the first communicationinterface comprises a low-frequency radio frequency (RF) communicationinterface.
 13. The method of claim 11, wherein the second communicationinterface comprises one or more of: a Bluetooth™ interface; a ZigBee™interface; and a Z-Wave™ interface.
 14. The method of claim 11, furthercomprising; uploading, by the mobile computing device, the lockidentifier to a remote server, thereby facilitating the remote server tovalidate the smart lock based on a set of lock identifiers and/or a setof operation commands stored on the remote server; and receiving, fromthe remote server, a result indicating whether the smart lock isvalidated.
 15. The method of claim 11, further comprising: maintaining,by the mobile computing device, an operation queue comprising a set oflock identifiers and a corresponding set of operation commands; andlooking up the operation queue based on the received lock identifier tovalidate the smart lock.
 16. The method of claim 11, further comprisingencrypting communications between the smart key and the smart lockand/or communications between the smart key and the mobile computingdevice.
 17. The method of claim 11, wherein locking or unlocking thesmart lock comprises detecting a relative position between the smart keyand the smart lock.
 18. The method of claim 11, further comprising:receiving, by the smart key from the smart lock, a current status of thesmart lock subsequent to the smart key locking or unlocking the smartlock; and uploading, by the smart key via the mobile computing device,the current status of the smart lock to a remote server, therebyfacilitating the remote server in maintaining the current status of thesmart lock.
 19. The method of claim 11, wherein the mobile computingdevice comprises a smartphone.
 20. The method of claim 11, furthercomprising: displaying, by the mobile computing device, an error messagein response to invalidating the smart lock.